package com.matt.service;

import com.matt.commons.dto.sso.StaffDTO;
import com.matt.foundation.DO.course.CourseAddDO;
import com.matt.foundation.DO.course.PrepareStaffDO;
import com.matt.foundation.query.ClassesCoursePlanQuery;
import com.matt.foundation.vo.course.VendorCoursePrepareDetailVO;
import com.matt.foundation.vo.course.WebCoursePlanListVo;
import org.springframework.data.domain.Page;

import java.util.List;
import java.util.Map;

/**
 * *******************************
 * Created by Ron.
 * form com.matt
 * on 2018/11/26
 * *******************************
 */
public interface PrepareCourseService {

    Page<WebCoursePlanListVo> getCourseList(ClassesCoursePlanQuery query, Boolean isTestUser);

    Page<WebCoursePlanListVo> getWebCoursePlanHistory(ClassesCoursePlanQuery query, Boolean isTestUser);

    Map courseDetail(String areaId, String coursePlanClassesId);

    Boolean prepareCourse(StaffDTO dto, VendorCoursePrepareDetailVO prepareDetail, String coursePlanClassesId, Integer action);

    Boolean prepareAreaBuildCourse(StaffDTO dto, VendorCoursePrepareDetailVO prepareDetail, String coursePlanClassesId, String content, Integer action, CourseAddDO courseAddDO);

    Long nonPrepareCount(String staffId, String areaId);

    List<PrepareStaffDO> getCoursePlanClassList(String areaId,String today);

    Map coursePADDetail(String areaId, String coursePlanClassesId);

}
